let throttle=function(fn,wait){
    let timer=null
    let start=Date.now()
    let first=true
    return function(){
        cur=Date.now()
        remain=wait-(cur-start)
        args=arguments//
        context=this//捕获this
        if(first){
            fn.apply(context,args)//使fn运行的this的指向正确。保证fn运行中的this指向c.throttle()()中的C而不是window.如果为fn时，则fn中的this指向window，this为运行时绑定，箭头函数没this，this继承外层函数的this，没外层函数指向window
            first=false
            return 
            
        }
        if(remain<=0){
            fn.apply(context,args)
            start=Date.now()
        }
    }
}
a=setInterval(throttle(()=>{console.log(Math.random())},5000), 100);

a=function(fn){
    return function(){
        fn()
        fn.apply(this)
    }
}